//-----------------------------------------------------------------------
// <copyright file="Sensors.h" company="Microsoft">
//      Copyright (c) 2007 Microsoft Corporation.  All rights
//  reserved.
// </copyright>
//
// Module:       
//        Sensors.h
//
// Description:
//        This file defines supporting structures and values used in
//        the Sensors platform.
//
//-----------------------------------------------------------------------

#ifndef _SENSORS_H_
#define _SENSORS_H_
#include <winapifamily.h>

#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)


#include "propkeydef.h"

// {BA1BB692-9B7A-4833-9A1E-525ED134E7E2}
DEFINE_GUID(GUID_DEVINTERFACE_SENSOR,               0XBA1BB692, 0X9B7A, 0X4833, 0X9A, 0X1E, 0X52, 0X5E, 0XD1, 0X34, 0XE7, 0XE2);

// {BFD96016-6BD7-4560-AD34-F2F6607E8F81}
DEFINE_GUID(SENSOR_EVENT_STATE_CHANGED,             0XBFD96016, 0X6BD7, 0X4560, 0XAD, 0X34, 0XF2, 0XF6, 0X60, 0X7E, 0X8F, 0X81);
// {2ED0F2A4-0087-41D3-87DB-6773370B3C88}
DEFINE_GUID(SENSOR_EVENT_DATA_UPDATED,              0X2ED0F2A4, 0X0087, 0X41D3, 0X87, 0XDB, 0X67, 0X73, 0X37, 0X0B, 0X3C, 0X88);
// {2358F099-84C9-4D3D-90DF-C2421E2B2045}
DEFINE_GUID(SENSOR_EVENT_PROPERTY_CHANGED,          0X2358F099, 0X84C9, 0X4D3D, 0X90, 0XDF, 0XC2, 0X42, 0X1E, 0X2B, 0X20, 0X45);
// {825F5A94-0F48-4396-9CA0-6ECB5C99D915}
DEFINE_GUID(SENSOR_EVENT_ACCELEROMETER_SHAKE,       0X825F5A94, 0X0F48, 0X4396, 0X9C, 0XA0, 0X6E, 0XCB, 0X5C, 0X99, 0XD9, 0X15);

// {64346E30-8728-4B34-BDF6-4F52442C5C28}
DEFINE_GUID(SENSOR_EVENT_PARAMETER_COMMON_GUID,     0X64346E30, 0X8728, 0X4B34, 0XBD, 0XF6, 0X4F, 0X52, 0X44, 0X2C, 0X5C, 0X28);
DEFINE_PROPERTYKEY(SENSOR_EVENT_PARAMETER_EVENT_ID, 0X64346E30, 0X8728, 0X4B34, 0XBD, 0XF6, 0X4F, 0X52, 0X44, 0X2C, 0X5C, 0X28, 2);
DEFINE_PROPERTYKEY(SENSOR_EVENT_PARAMETER_STATE,    0X64346E30, 0X8728, 0X4B34, 0XBD, 0XF6, 0X4F, 0X52, 0X44, 0X2C, 0X5C, 0X28, 3); // [VT_UI4]

// {77112BCD-FCE1-4f43-B8B8-A88256ADB4B3}
DEFINE_GUID(SENSOR_ERROR_PARAMETER_COMMON_GUID,     0X77112BCD, 0XFCE1, 0X4F43, 0XB8, 0XB8, 0XA8, 0X82, 0X56, 0XAD, 0XB4, 0XB3);


/////////////////////////////////////////////////////////////////////
// Sensor Properties
//

// {7F8383EC-D3EC-495C-A8CF-B8BBE85C2920}
DEFINE_GUID(SENSOR_PROPERTY_COMMON_GUID,                        0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20);
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_TYPE,                        0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 2); //[VT_CLSID]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_STATE,                       0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 3); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_PERSISTENT_UNIQUE_ID,        0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 5); //[VT_CLSID]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_MANUFACTURER,                0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 6); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_MODEL,                       0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 7); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_SERIAL_NUMBER,               0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 8); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_FRIENDLY_NAME,               0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 9); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_DESCRIPTION,                 0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 10); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_CONNECTION_TYPE,             0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 11); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_MIN_REPORT_INTERVAL,         0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 12); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_CURRENT_REPORT_INTERVAL,     0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 13); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_CHANGE_SENSITIVITY,          0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 14); //[VT_UNKNOWN], IPortableDeviceValues
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_DEVICE_PATH,                 0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 15); //[VT_LPWSTR]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE,        0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 16); //[VT_VECTOR|VT_UI1]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_ACCURACY,                    0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 17); //[VT_UNKNOWN], IPortableDeviceValues
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_RESOLUTION,                  0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 18); //[VT_UNKNOWN], IPortableDeviceValues
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_LOCATION_DESIRED_ACCURACY,   0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 19); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_RANGE_MINIMUM,               0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 20); //[VT_UNKNOWN], IPortableDeviceValues
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_RANGE_MAXIMUM,               0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 21); //[VT_UNKNOWN], IPortableDeviceValues
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_HID_USAGE,                   0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 22); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_RADIO_STATE,                 0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 23); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_RADIO_STATE_PREVIOUS,        0X7F8383EC, 0XD3EC, 0X495C, 0XA8, 0XCF, 0XB8, 0XBB, 0XE8, 0X5C, 0X29, 0X20, 24); //[VT_UI4]

/////////////////////////////////////////////////////////////////////
// Sensor Categories
//

// {C317C286-C468-4288-9975-D4C4587C442C}
DEFINE_GUID(SENSOR_CATEGORY_ALL,            0XC317C286, 0XC468, 0X4288, 0X99, 0X75, 0XD4, 0XC4, 0X58, 0X7C, 0X44, 0X2C);
// {BFA794E4-F964-4FDB-90F6-51056BFE4B44}
DEFINE_GUID(SENSOR_CATEGORY_LOCATION,       0XBFA794E4, 0XF964, 0X4FDB, 0X90, 0XF6, 0X51, 0X05, 0X6B, 0XFE, 0X4B, 0X44);
// {323439AA-7F66-492B-BA0C-73E9AA0A65D5}
DEFINE_GUID(SENSOR_CATEGORY_ENVIRONMENTAL,  0X323439AA, 0X7F66, 0X492B, 0XBA, 0X0C, 0X73, 0XE9, 0XAA, 0X0A, 0X65, 0XD5);
// {CD09DAF1-3B2E-4C3D-B598-B5E5FF93FD46}
DEFINE_GUID(SENSOR_CATEGORY_MOTION,         0XCD09DAF1, 0X3B2E, 0X4C3D, 0XB5, 0X98, 0XB5, 0XE5, 0XFF, 0X93, 0XFD, 0X46);
// {9E6C04B6-96FE-4954-B726-68682A473F69}
DEFINE_GUID(SENSOR_CATEGORY_ORIENTATION,    0X9E6C04B6, 0X96FE, 0X4954, 0XB7, 0X26, 0X68, 0X68, 0X2A, 0X47, 0X3F, 0X69);
// {8D131D68-8EF7-4656-80B5-CCCBD93791C5}
DEFINE_GUID(SENSOR_CATEGORY_MECHANICAL,     0X8D131D68, 0X8EF7, 0X4656, 0X80, 0XB5, 0XCC, 0XCB, 0XD9, 0X37, 0X91, 0XC5);
// {FB73FCD8-FC4A-483C-AC58-27B691C6BEFF}
DEFINE_GUID(SENSOR_CATEGORY_ELECTRICAL,     0XFB73FCD8, 0XFC4A, 0X483C, 0XAC, 0X58, 0X27, 0XB6, 0X91, 0XC6, 0XBE, 0XFF);
// {CA19690F-A2C7-477D-A99E-99EC6E2B5648}
DEFINE_GUID(SENSOR_CATEGORY_BIOMETRIC,      0XCA19690F, 0XA2C7, 0X477D, 0XA9, 0X9E, 0X99, 0XEC, 0X6E, 0X2B, 0X56, 0X48);
// {17A665C0-9063-4216-B202-5C7A255E18CE}
DEFINE_GUID(SENSOR_CATEGORY_LIGHT,          0X17A665C0, 0X9063, 0X4216, 0XB2, 0X02, 0X5C, 0X7A, 0X25, 0X5E, 0X18, 0XCE);
// {B000E77E-F5B5-420F-815D-0270A726F270}
DEFINE_GUID(SENSOR_CATEGORY_SCANNER,        0XB000E77E, 0XF5B5, 0X420F, 0X81, 0X5D, 0X02, 0X70, 0XA7, 0X26, 0XF2, 0X70);
// {2C90E7A9-F4C9-4FA2-AF37-56D471FE5A3D}
DEFINE_GUID(SENSOR_CATEGORY_OTHER,          0x2C90E7A9, 0xF4C9, 0x4FA2, 0xAF, 0x37, 0x56, 0xD4, 0x71, 0xFE, 0x5A, 0x3D);
// {2BEAE7FA-19B0-48C5-A1F6-B5480DC206B0}
DEFINE_GUID(SENSOR_CATEGORY_UNSUPPORTED,    0x2BEAE7fA, 0x19B0, 0x48C5, 0xA1, 0xF6, 0xB5, 0x48, 0x0D, 0xC2, 0x06, 0xB0);

/////////////////////////////////////////////////////////////////////
// Sensor Types
//

//
// Location Sensor Types
//

// {ED4CA589-327A-4FF9-A560-91DA4B48275E}
DEFINE_GUID(SENSOR_TYPE_LOCATION_GPS,                           0XED4CA589, 0X327A, 0X4FF9, 0XA5, 0X60, 0X91, 0XDA, 0X4B, 0X48, 0X27, 0X5E);
// {095F8184-0FA9-4445-8E6E-B70F320B6B4C}
DEFINE_GUID(SENSOR_TYPE_LOCATION_STATIC,                        0X095F8184, 0X0FA9, 0X4445, 0X8E, 0X6E, 0XB7, 0X0F, 0X32, 0X0B, 0X6B, 0X4C);
// {3B2EAE4A-72CE-436D-96D2-3C5B8570E987}
DEFINE_GUID(SENSOR_TYPE_LOCATION_LOOKUP,                        0X3B2EAE4A, 0X72CE, 0X436D, 0X96, 0XD2, 0X3C, 0X5B, 0X85, 0X70, 0XE9, 0X87);
// {691C341A-5406-4FE1-942F-2246CBEB39E0}
DEFINE_GUID(SENSOR_TYPE_LOCATION_TRIANGULATION,                 0X691C341A, 0X5406, 0X4FE1, 0X94, 0X2F, 0X22, 0X46, 0XCB, 0XEB, 0X39, 0XE0);
// {9B2D0566-0368-4F71-B88D-533F132031DE}
DEFINE_GUID(SENSOR_TYPE_LOCATION_OTHER,                         0X9B2D0566, 0X0368, 0X4F71, 0XB8, 0X8D, 0X53, 0X3F, 0X13, 0X20, 0X31, 0XDE);
// {D26988CF-5162-4039-BB17-4C58B698E44A}
DEFINE_GUID(SENSOR_TYPE_LOCATION_BROADCAST,                     0XD26988CF, 0X5162, 0X4039, 0XBB, 0X17, 0X4C, 0X58, 0XB6, 0X98, 0XE4, 0X4A);
// {1A37D538-F28B-42DA-9FCE-A9D0A2A6D829}
DEFINE_GUID(SENSOR_TYPE_LOCATION_DEAD_RECKONING,                0X1A37D538, 0XF28B, 0X42DA, 0X9F, 0XCE, 0XA9, 0XD0, 0XA2, 0XA6, 0XD8, 0X29);

//
// Environmental Sensor Types
//

// {04FD0EC4-D5DA-45FA-95A9-5DB38EE19306}
DEFINE_GUID(SENSOR_TYPE_ENVIRONMENTAL_TEMPERATURE,              0X04FD0EC4, 0XD5DA, 0X45FA, 0X95, 0XA9, 0X5D, 0XB3, 0X8E, 0XE1, 0X93, 0X06);
// {0E903829-FF8A-4A93-97DF-3DCBDE402288}
DEFINE_GUID(SENSOR_TYPE_ENVIRONMENTAL_ATMOSPHERIC_PRESSURE,     0X0E903829, 0XFF8A, 0X4A93, 0X97, 0XDF, 0X3D, 0XCB, 0XDE, 0X40, 0X22, 0X88);
// {5C72BF67-BD7E-4257-990B-98A3BA3B400A}
DEFINE_GUID(SENSOR_TYPE_ENVIRONMENTAL_HUMIDITY,                 0X5C72BF67, 0XBD7E, 0X4257, 0X99, 0X0B, 0X98, 0XA3, 0XBA, 0X3B, 0X40, 0X0A);
// {DD50607B-A45F-42CD-8EFD-EC61761C4226}
DEFINE_GUID(SENSOR_TYPE_ENVIRONMENTAL_WIND_SPEED,               0XDD50607B, 0XA45F, 0X42CD, 0X8E, 0XFD, 0XEC, 0X61, 0X76, 0X1C, 0X42, 0X26);
// {9EF57A35-9306-434D-AF09-37FA5A9C00BD}
DEFINE_GUID(SENSOR_TYPE_ENVIRONMENTAL_WIND_DIRECTION,           0X9EF57A35, 0X9306, 0X434D, 0XAF, 0X09, 0X37, 0XFA, 0X5A, 0X9C, 0X00, 0XBD);

//
// Motion Sensor Types
//

// {C04D2387-7340-4CC2-991E-3B18CB8EF2F4}
DEFINE_GUID(SENSOR_TYPE_ACCELEROMETER_1D,                       0XC04D2387, 0X7340, 0X4CC2, 0X99, 0X1E, 0X3B, 0X18, 0XCB, 0X8E, 0XF2, 0XF4);
// {B2C517A8-F6B5-4BA6-A423-5DF560B4CC07}
DEFINE_GUID(SENSOR_TYPE_ACCELEROMETER_2D,                       0XB2C517A8, 0XF6B5, 0X4BA6, 0XA4, 0X23, 0X5D, 0XF5, 0X60, 0XB4, 0XCC, 0X07);
// {C2FB0F5F-E2D2-4C78-BCD0-352A9582819D}
DEFINE_GUID(SENSOR_TYPE_ACCELEROMETER_3D,                       0XC2FB0F5F, 0XE2D2, 0X4C78, 0XBC, 0XD0, 0X35, 0X2A, 0X95, 0X82, 0X81, 0X9D);
// {5C7C1A12-30A5-43B9-A4B2-CF09EC5B7BE8}
DEFINE_GUID(SENSOR_TYPE_MOTION_DETECTOR,                        0X5C7C1A12, 0X30A5, 0X43B9, 0XA4, 0XB2, 0XCF, 0X09, 0XEC, 0X5B, 0X7B, 0XE8);
// {FA088734-F552-4584-8324-EDFAF649652C}
DEFINE_GUID(SENSOR_TYPE_GYROMETER_1D,                           0XFA088734, 0XF552, 0X4584, 0X83, 0X24, 0XED, 0XFA, 0XF6, 0X49, 0X65, 0X2C);
// {31EF4F83-919B-48BF-8DE0-5D7A9D240556}
DEFINE_GUID(SENSOR_TYPE_GYROMETER_2D,                           0X31EF4F83, 0X919B, 0X48BF, 0X8D, 0XE0, 0X5D, 0X7A, 0X9D, 0X24, 0X05, 0X56);
// {09485F5A-759E-42C2-BD4B-A349B75C8643}
DEFINE_GUID(SENSOR_TYPE_GYROMETER_3D,                           0X09485F5A, 0X759E, 0X42C2, 0XBD, 0X4B, 0XA3, 0X49, 0XB7, 0X5C, 0X86, 0X43);
// {6BD73C1F-0BB4-4310-81B2-DFC18A52BF94}
DEFINE_GUID(SENSOR_TYPE_SPEEDOMETER,                            0X6BD73C1F, 0X0BB4, 0X4310, 0X81, 0XB2, 0XDF, 0XC1, 0X8A, 0X52, 0XBF, 0X94);

//
// Orientation Sensor Types
//

// {A415F6C5-CB50-49D0-8E62-A8270BD7A26C}
DEFINE_GUID(SENSOR_TYPE_COMPASS_1D,                             0XA415F6C5, 0XCB50, 0X49D0, 0X8E, 0X62, 0XA8, 0X27, 0X0B, 0XD7, 0XA2, 0X6C);
// {15655CC0-997A-4D30-84DB-57CABA3648BB}
DEFINE_GUID(SENSOR_TYPE_COMPASS_2D,                             0X15655CC0, 0X997A, 0X4D30, 0X84, 0XDB, 0X57, 0XCA, 0XBA, 0X36, 0X48, 0XBB);
// {76B5CE0D-17DD-414D-93A1-E127F40BDF6E}
DEFINE_GUID(SENSOR_TYPE_COMPASS_3D,                             0X76B5CE0D, 0X17DD, 0X414D, 0X93, 0XA1, 0XE1, 0X27, 0XF4, 0X0B, 0XDF, 0X6E);
// {B96F98C5-7A75-4BA7-94E9-AC868C966DD8}
DEFINE_GUID(SENSOR_TYPE_INCLINOMETER_1D,                        0XB96F98C5, 0X7A75, 0X4BA7, 0X94, 0XE9, 0XAC, 0X86, 0X8C, 0X96, 0X6D, 0XD8);
// {AB140F6D-83EB-4264-B70B-B16A5B256A01}
DEFINE_GUID(SENSOR_TYPE_INCLINOMETER_2D,                        0XAB140F6D, 0X83EB, 0X4264, 0XB7, 0X0B, 0XB1, 0X6A, 0X5B, 0X25, 0X6A, 0X01);
// {B84919FB-EA85-4976-8444-6F6F5C6D31DB}
DEFINE_GUID(SENSOR_TYPE_INCLINOMETER_3D,                        0XB84919FB, 0XEA85, 0X4976, 0X84, 0X44, 0X6F, 0X6F, 0X5C, 0X6D, 0X31, 0XDB);
// {5F14AB2F-1407-4306-A93F-B1DBABE4F9C0}
DEFINE_GUID(SENSOR_TYPE_DISTANCE_1D,                            0X5F14AB2F, 0X1407, 0X4306, 0XA9, 0X3F, 0XB1, 0XDB, 0XAB, 0XE4, 0XF9, 0XC0);
// {5CF9A46C-A9A2-4E55-B6A1-A04AAFA95A92}
DEFINE_GUID(SENSOR_TYPE_DISTANCE_2D,                            0X5CF9A46C, 0XA9A2, 0X4E55, 0XB6, 0XA1, 0XA0, 0X4A, 0XAF, 0XA9, 0X5A, 0X92);
// {A20CAE31-0E25-4772-9FE5-96608A1354B2}
DEFINE_GUID(SENSOR_TYPE_DISTANCE_3D,                            0XA20CAE31, 0X0E25, 0X4772, 0X9F, 0XE5, 0X96, 0X60, 0X8A, 0X13, 0X54, 0XB2);
// {9F81F1AF-C4AB-4307-9904-C828BFB90829}
DEFINE_GUID(SENSOR_TYPE_AGGREGATED_QUADRANT_ORIENTATION,        0X9F81F1AF, 0XC4AB, 0X4307, 0X99, 0X04, 0XC8, 0X28, 0XBF, 0XB9, 0X08, 0X29);
// {CDB5D8F7-3CFD-41C8-8542-CCE622CF5D6E}
DEFINE_GUID(SENSOR_TYPE_AGGREGATED_DEVICE_ORIENTATION,          0XCDB5D8F7, 0X3CFD, 0X41C8, 0X85, 0X42, 0XCC, 0XE6, 0X22, 0XCF, 0X5D, 0X6E);
// {86A19291-0482-402C-BF4C-ADDAC52B1C39}
DEFINE_GUID(SENSOR_TYPE_AGGREGATED_SIMPLE_DEVICE_ORIENTATION,   0X86A19291, 0X0482, 0X402C, 0XBF, 0X4C, 0XAD, 0XDA, 0XC5, 0X2B, 0X1C, 0X39);

//
// Electrical Sensor Types
//

// {C5484637-4FB7-4953-98B8-A56D8AA1FB1E}
DEFINE_GUID(SENSOR_TYPE_VOLTAGE,                                0XC5484637, 0X4FB7, 0X4953, 0X98, 0XB8, 0XA5, 0X6D, 0X8A, 0XA1, 0XFB, 0X1E);
// {5ADC9FCE-15A0-4BBE-A1AD-2D38A9AE831C}
DEFINE_GUID(SENSOR_TYPE_CURRENT,                                0X5ADC9FCE, 0X15A0, 0X4BBE, 0XA1, 0XAD, 0X2D, 0X38, 0XA9, 0XAE, 0X83, 0X1C);
// {CA2FFB1C-2317-49C0-A0B4-B63CE63461A0}
DEFINE_GUID(SENSOR_TYPE_CAPACITANCE,                            0XCA2FFB1C, 0X2317, 0X49C0, 0XA0, 0XB4, 0XB6, 0X3C, 0XE6, 0X34, 0X61, 0XA0);
// {9993D2C8-C157-4A52-A7B5-195C76037231}
DEFINE_GUID(SENSOR_TYPE_RESISTANCE,                             0X9993D2C8, 0XC157, 0X4A52, 0XA7, 0XB5, 0X19, 0X5C, 0X76, 0X03, 0X72, 0X31);
// {DC1D933F-C435-4C7D-A2FE-607192A524D3}
DEFINE_GUID(SENSOR_TYPE_INDUCTANCE,                             0XDC1D933F, 0XC435, 0X4C7D, 0XA2, 0XFE, 0X60, 0X71, 0X92, 0XA5, 0X24, 0XD3);
// {212F10F5-14AB-4376-9A43-A7794098C2FE}
DEFINE_GUID(SENSOR_TYPE_ELECTRICAL_POWER,                       0X212F10F5, 0X14AB, 0X4376, 0X9A, 0X43, 0XA7, 0X79, 0X40, 0X98, 0XC2, 0XFE);
// {2B3681A9-CADC-45AA-A6FF-54957C8BB440}
DEFINE_GUID(SENSOR_TYPE_POTENTIOMETER,                          0X2B3681A9, 0XCADC, 0X45AA, 0XA6, 0XFF, 0X54, 0X95, 0X7C, 0X8B, 0XB4, 0X40);
// {8CD2CBB6-73E6-4640-A709-72AE8FB60D7F}
DEFINE_GUID(SENSOR_TYPE_FREQUENCY,                              0X8CD2CBB6, 0X73E6, 0X4640, 0XA7, 0X09, 0X72, 0XAE, 0X8F, 0XB6, 0X0D, 0X7F);

//
// Mechanical Sensor Types
//

// {9C7E371F-1041-460B-8D5C-71E4752E350C}
DEFINE_GUID(SENSOR_TYPE_BOOLEAN_SWITCH,                         0X9C7E371F, 0X1041, 0X460B, 0X8D, 0X5C, 0X71, 0XE4, 0X75, 0X2E, 0X35, 0X0C);
// {B3EE4D76-37A4-4402-B25E-99C60A775FA1}
DEFINE_GUID(SENSOR_TYPE_MULTIVALUE_SWITCH,                      0XB3EE4D76, 0X37A4, 0X4402, 0XB2, 0X5E, 0X99, 0XC6, 0X0A, 0X77, 0X5F, 0XA1);
// {C2AB2B02-1A1C-4778-A81B-954A1788CC75}
DEFINE_GUID(SENSOR_TYPE_FORCE,                                  0XC2AB2B02, 0X1A1C, 0X4778, 0XA8, 0X1B, 0X95, 0X4A, 0X17, 0X88, 0XCC, 0X75);
// {C06DD92C-7FEB-438E-9BF6-82207FFF5BB8}
DEFINE_GUID(SENSOR_TYPE_SCALE,                                  0XC06DD92C, 0X7FEB, 0X438E, 0X9B, 0XF6, 0X82, 0X20, 0X7F, 0XFF, 0X5B, 0XB8);
// {26D31F34-6352-41CF-B793-EA0713D53D77}
DEFINE_GUID(SENSOR_TYPE_PRESSURE,                               0X26D31F34, 0X6352, 0X41CF, 0XB7, 0X93, 0XEA, 0X07, 0X13, 0XD5, 0X3D, 0X77);
// {C6D1EC0E-6803-4361-AD3D-85BCC58C6D29}
DEFINE_GUID(SENSOR_TYPE_STRAIN,                                 0XC6D1EC0E, 0X6803, 0X4361, 0XAD, 0X3D, 0X85, 0XBC, 0XC5, 0X8C, 0X6D, 0X29);
// {545C8BA5-B143-4545-868F-CA7FD986B4F6}
DEFINE_GUID(SENSOR_TYPE_BOOLEAN_SWITCH_ARRAY,                   0X545C8BA5, 0XB143, 0X4545, 0X86, 0X8F, 0XCA, 0X7F, 0XD9, 0X86, 0XB4, 0XF6);

//
// Biometric Sensor Types
//

// {C138C12B-AD52-451C-9375-87F518FF10C6}
DEFINE_GUID(SENSOR_TYPE_HUMAN_PRESENCE,                         0XC138C12B, 0XAD52, 0X451C, 0X93, 0X75, 0X87, 0XF5, 0X18, 0XFF, 0X10, 0XC6);
// {5220DAE9-3179-4430-9F90-06266D2A34DE}
DEFINE_GUID(SENSOR_TYPE_HUMAN_PROXIMITY,                        0X5220DAE9, 0X3179, 0X4430, 0X9F, 0X90, 0X06, 0X26, 0X6D, 0X2A, 0X34, 0XDE);
// {17DB3018-06C4-4F7D-81AF-9274B7599C27}
DEFINE_GUID(SENSOR_TYPE_TOUCH,                                  0X17DB3018, 0X06C4, 0X4F7D, 0X81, 0XAF, 0X92, 0X74, 0XB7, 0X59, 0X9C, 0X27);

//
// Light Sensor Types
//

// {97F115C8-599A-4153-8894-D2D12899918A}
DEFINE_GUID(SENSOR_TYPE_AMBIENT_LIGHT,                          0X97F115C8, 0X599A, 0X4153, 0X88, 0X94, 0XD2, 0XD1, 0X28, 0X99, 0X91, 0X8A);

//
// Scanner Sensor Types
//

// {44328EF5-02DD-4E8D-AD5D-9249832B2ECA}
DEFINE_GUID(SENSOR_TYPE_RFID_SCANNER,                           0X44328EF5, 0X02DD, 0X4E8D, 0XAD, 0X5D, 0X92, 0X49, 0X83, 0X2B, 0X2E, 0XCA);
// {990B3D8F-85BB-45FF-914D-998C04F372DF}
DEFINE_GUID(SENSOR_TYPE_BARCODE_SCANNER,                        0X990B3D8F, 0X85BB, 0X45FF, 0X91, 0X4D, 0X99, 0X8C, 0X04, 0XF3, 0X72, 0XDF);


//
// Custom Sensor Types
//

// {E83AF229-8640-4D18-A213-E22675EBB2C3}
DEFINE_GUID(SENSOR_TYPE_CUSTOM,                                 0XE83AF229, 0X8640, 0X4D18, 0XA2, 0X13, 0XE2, 0X26, 0X75, 0XEB, 0XB2, 0XC3);

//
// Unknown Sensor Types
//

// {10BA83E3-EF4F-41ED-9885-A87D6435A8E1}
DEFINE_GUID(SENSOR_TYPE_UNKNOWN,                                0X10BA83E3, 0XEF4F, 0X41ED, 0X98, 0X85, 0XA8, 0X7D, 0X64, 0X35, 0XA8, 0XE1);


/////////////////////////////////////////////////////////////////////
// Sensor Data Types
//

//
// Common Sensor Data Types
//

// {DB5E0CF2-CF1F-4C18-B46C-D86011D62150}
DEFINE_GUID(SENSOR_DATA_TYPE_COMMON_GUID,                               0XDB5E0CF2, 0XCF1F, 0X4C18, 0XB4, 0X6C, 0XD8, 0X60, 0X11, 0XD6, 0X21, 0X50);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TIMESTAMP,                          0XDB5E0CF2, 0XCF1F, 0X4C18, 0XB4, 0X6C, 0XD8, 0X60, 0X11, 0XD6, 0X21, 0X50, 2); //[VT_FILETIME]

//
// Location Sensor Data Types
//

// {055C74D8-CA6F-47D6-95C6-1ED3637A0FF4}
DEFINE_GUID(SENSOR_DATA_TYPE_LOCATION_GUID,                             0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4);
// SENSOR_DATA_TYPE_LATITUDE: Degrees latitude where North is positive
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LATITUDE_DEGREES,                   0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 2); //[VT_R8]
// SENSOR_DATA_TYPE_LONGITUDE: Degrees longitude where East is positive
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LONGITUDE_DEGREES,                  0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 3); //[VT_R8]
// SENSOR_DATA_TYPE_ALTITUDE_SEALEVEL_METERS: Altitude with regards to sea level, in meters
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ALTITUDE_SEALEVEL_METERS,           0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 4); //[VT_R8]
// SENSOR_DATA_TYPE_ALTITUDE_ELLIPSOID_METERS: Altitude with regards to ellipsoid, in meters
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ALTITUDE_ELLIPSOID_METERS,          0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 5); //[VT_R8]
// SENSOR_DATA_TYPE_SPEED_KNOTS: Speed measured in knots
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SPEED_KNOTS,                        0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 6); //[VT_R8]
// SENSOR_DATA_TYPE_TRUE_HEADING_DEGREES: Heading relative to true North in degrees
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TRUE_HEADING_DEGREES,               0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 7); //[VT_R8]
// SENSOR_DATA_TYPE_MAGNETIC_HEADING_DEGREES: Heading relative to magnetic North in degrees
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_DEGREES,           0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 8); //[VT_R8]
// SENSOR_DATA_TYPE_MAGNETIC_VARIATION: Magnetic variation. East is positive
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_VARIATION,                 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 9); //[VT_R8]
// SENSOR_DATA_TYPE_FIX_QUALITY: Quality of fix
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_FIX_QUALITY,                        0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 10); //[VT_I4]
// SENSOR_DATA_TYPE_FIX_TYPE: Fix Type
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_FIX_TYPE,                           0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 11); //[VT_I4]
// SENSOR_DATA_TYPE_POSITION_DILUTION_OF_PRECISION: Position Dilution of Precision
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_POSITION_DILUTION_OF_PRECISION,     0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 12); //[VT_R8]
// SENSOR_DATA_TYPE_HORIZONAL_DILUTION_OF_PRECISION: HORIZONTAL Dilution of Precision
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_HORIZONAL_DILUTION_OF_PRECISION,    0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 13); //[VT_R8]
// SENSOR_DATA_TYPE_VERTICAL_DILUTION_OF_PRECISION: VERTICAL Dilution of Precision
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_VERTICAL_DILUTION_OF_PRECISION,     0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 14); //[VT_R8]
// SENSOR_DATA_TYPE_SATELLITES_USED_COUNT: Number of satellites used in solution
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_USED_COUNT,              0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 15); //[VT_I4]
// SENSOR_DATA_TYPE_SATELLITES_USED_PRNS: PRN numbers of satellites used in the solution
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_USED_PRNS,               0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 16); //[VT_VECTOR | VT_UI1]
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW: Number of satellites in view.  From 0-GPS_MAX_SATELLITES
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW,                 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 17); //[VT_I4]
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_PRNS: PRN numbers of satellites in view
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_PRNS,            0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 18); //[VT_VECTOR | VT_UI1]
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_ELEVATION: Elevation of each sattellite in view
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_ELEVATION,       0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 19); //[VT_VECTOR | VT_UI1]
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_AZIMUTH: Azimuth of each satellite in view
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_AZIMUTH,         0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 20); //[VT_VECTOR | VT_UI1
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_STN_RATIO: Signal to noise ratio for each satellite in view
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_STN_RATIO,       0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 21); //[VT_VECTOR | VT_UI1]
// SENSOR_DATA_TYPE_ERROR_RADIUS_METERS: Accuracy of Latitude and Longitude values
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ERROR_RADIUS_METERS,                0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 22); //[VT_R8]
// SENSOR_DATA_TYPE_ADDRESS1: AddressLine1
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ADDRESS1,                           0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 23); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_ADDRESS2: AddressLine2
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ADDRESS2,                           0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 24); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_CITY: City
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CITY,                               0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 25); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_STATE_PROVINCE: State/Province
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_STATE_PROVINCE,                     0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 26); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_POSTALCODE: Postal Code (e.g. ZIP)
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_POSTALCODE,                         0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 27); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_COUNTRY_REGION: Country/Region
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_COUNTRY_REGION,                     0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 28); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_ALTITUDE_ELLIPSOID_ERROR_METERS: Altitude Error with regards to ellipsoid, in meters
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ALTITUDE_ELLIPSOID_ERROR_METERS,    0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 29); //[VT_R8]
// SENSOR_DATA_TYPE_ALTITUDE_SEALEVEL_ERROR_METERS: Altitude Error with regards to sea level, in meters
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ALTITUDE_SEALEVEL_ERROR_METERS,     0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 30); //[VT_R8]
// SENSOR_DATA_TYPE_GPS_SELECTION_MODE:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_GPS_SELECTION_MODE,                 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 31); //[VT_I4]
// SENSOR_DATA_TYPE_GPS_OPERATION_MODE:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_GPS_OPERATION_MODE,                 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 32); //[VT_I4]
// SENSOR_DATA_TYPE_GPS_STATUS:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_GPS_STATUS,                         0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 33); //[VT_I4]
// SENSOR_DATA_TYPE_GEOIDAL_SEPARATION:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_GEOIDAL_SEPARATION,                 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 34); //[VT_R8]
// SENSOR_DATA_TYPE_DGPS_DATA_AGE:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_DGPS_DATA_AGE,                      0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 35); //[VT_R8]
// SENSOR_DATA_TYPE_ALTITUDE_ANTENNA_SEALEVEL_METERS:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ALTITUDE_ANTENNA_SEALEVEL_METERS,   0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 36); //[VT_R8]
// SENSOR_DATA_TYPE_DIFFERENTIAL_REFERENCE_STATION_ID:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_DIFFERENTIAL_REFERENCE_STATION_ID,  0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 37); //[VT_I4]
// SENSOR_DATA_TYPE_NMEA_SENTENCE:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_NMEA_SENTENCE,                      0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 38); //[VT_LPWSTR]
// SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_ID:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_IN_VIEW_ID,              0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 39); //[VT_VECTOR|VT_UI1]
// SENSOR_DATA_TYPE_LOCATION_SOURCE:
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LOCATION_SOURCE,                    0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 40); //[VT_UI4]
// SENSOR_DATA_TYPE_SATELLITES_USED_PRNS_AND_CONSTELLATIONS: PRN numbers and constellation information of satellites used in the solution
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SATELLITES_USED_PRNS_AND_CONSTELLATIONS, 0X055C74D8, 0XCA6F, 0X47D6, 0X95, 0XC6, 0X1E, 0XD3, 0X63, 0X7A, 0X0F, 0XF4, 41); //[VT_VECTOR | VT_UI2]

//
// Environmental Sensor Data Types
//

// {8B0AA2F1-2D57-42EE-8CC0-4D27622B46C4}
DEFINE_GUID(SENSOR_DATA_TYPE_ENVIRONMENTAL_GUID,                            0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TEMPERATURE_CELSIUS,                    0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4, 2); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_RELATIVE_HUMIDITY_PERCENT,              0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4, 3); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ATMOSPHERIC_PRESSURE_BAR,               0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4, 4); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_WIND_DIRECTION_DEGREES_ANTICLOCKWISE,   0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4, 5); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_WIND_SPEED_METERS_PER_SECOND,           0X8B0AA2F1, 0X2D57, 0X42EE, 0X8C, 0XC0, 0X4D, 0X27, 0X62, 0X2B, 0X46, 0XC4, 6); //[VT_R4]


//
// Motion Sensor Data Types
//

// {3F8A69A2-07C5-4E48-A965-CD797AAB56D5}
DEFINE_GUID(SENSOR_DATA_TYPE_MOTION_GUID,                                               0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5);
// Accelerometer Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ACCELERATION_X_G,                                   0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 2); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ACCELERATION_Y_G,                                   0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 3); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ACCELERATION_Z_G,                                   0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 4); //[VT_R8]
// Gyrometer Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_ACCELERATION_X_DEGREES_PER_SECOND_SQUARED,  0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 5); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_ACCELERATION_Y_DEGREES_PER_SECOND_SQUARED,  0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 6); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_ACCELERATION_Z_DEGREES_PER_SECOND_SQUARED,  0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 7); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SPEED_METERS_PER_SECOND,                            0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 8); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MOTION_STATE,                                       0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 9); //[VT_BOOL]
// Additional Motion Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_X_DEGREES_PER_SECOND,              0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 10); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Y_DEGREES_PER_SECOND,              0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 11); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ANGULAR_VELOCITY_Z_DEGREES_PER_SECOND,              0X3F8A69A2, 0X7C5, 0X4E48, 0XA9, 0X65, 0XCD, 0X79, 0X7A, 0XAB, 0X56, 0XD5, 12); //[VT_R8]

//
// Orientation Sensor Data Types
//

// {1637D8A2-4248-4275-865D-558DE84AEDFD}
DEFINE_GUID(SENSOR_DATA_TYPE_ORIENTATION_GUID,                      0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD);
// Inclinometer Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TILT_X_DEGREES,                 0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 2); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TILT_Y_DEGREES,                 0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 3); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TILT_Z_DEGREES,                 0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 4); //[VT_R4]
// Compass Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_X_DEGREES,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 5); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_Y_DEGREES,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 6); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_Z_DEGREES,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 7); //[VT_R4]
// Distance Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_DISTANCE_X_METERS,              0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 8); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_DISTANCE_Y_METERS,              0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 9); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_DISTANCE_Z_METERS,              0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 10); //[VT_R4]
// Additional Compass Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_MAGNETIC_NORTH_DEGREES,    0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 11); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_COMPENSATED_TRUE_NORTH_DEGREES,        0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 12); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_MAGNETIC_NORTH_DEGREES,                0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 13); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_HEADING_TRUE_NORTH_DEGREES,                    0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 14); //[VT_R8]
// Additional Orientation Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_QUADRANT_ANGLE_DEGREES,         0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 15); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ROTATION_MATRIX,                0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 16); //[VT_VECTOR|VT_UI1]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_QUATERNION,                     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 17); //[VT_VECTOR|VT_UI1]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_SIMPLE_DEVICE_ORIENTATION,      0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 18); //[VT_UI4]
// Compass (Magnetometer) Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_X_MILLIGAUSS,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 19); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_Y_MILLIGAUSS,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 20); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETIC_FIELD_STRENGTH_Z_MILLIGAUSS,     0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 21); //[VT_R8]
// Magnetometer Accuracy Data Types
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MAGNETOMETER_ACCURACY,          0X1637D8A2, 0X4248, 0X4275, 0X86, 0X5D, 0X55, 0X8D, 0XE8, 0X4A, 0XED, 0XFD, 22); //[VT_I4]

//
// Mechanical Sensor Data Types
//

// {38564A7C-F2F2-49BB-9B2B-BA60F66A58DF}
DEFINE_GUID(SENSOR_DATA_TYPE_GUID_MECHANICAL_GUID,                  0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_BOOLEAN_SWITCH_STATE,           0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 2); //[VT_BOOL]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_MULTIVALUE_SWITCH_STATE,        0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 3); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_FORCE_NEWTONS,                  0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 4); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ABSOLUTE_PRESSURE_PASCAL,       0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 5); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_GAUGE_PRESSURE_PASCAL,          0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 6); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_STRAIN,                         0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 7); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_WEIGHT_KILOGRAMS,               0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 8); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_BOOLEAN_SWITCH_ARRAY_STATES,    0X38564A7C, 0XF2F2, 0X49BB, 0X9B, 0X2B, 0XBA, 0X60, 0XF6, 0X6A, 0X58, 0XDF, 10); //[VT_UI4]

//
// Biometric Sensor Data Types
//

// {2299288A-6D9E-4B0B-B7EC-3528F89E40AF}
DEFINE_GUID(SENSOR_DATA_TYPE_BIOMETRIC_GUID,                        0X2299288A,    0X6D9E, 0X4B0B, 0XB7, 0XEC, 0X35, 0X28, 0XF8, 0X9E, 0X40, 0XAF);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_HUMAN_PRESENCE,                 0X2299288A,    0X6D9E, 0X4B0B, 0XB7, 0XEC, 0X35, 0X28, 0XF8, 0X9E, 0X40, 0XAF, 2); //[VT_BOOL]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_HUMAN_PROXIMITY_METERS,         0X2299288A,    0X6D9E, 0X4B0B, 0XB7, 0XEC, 0X35, 0X28, 0XF8, 0X9E, 0X40, 0XAF, 3); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_TOUCH_STATE,                    0X2299288A,    0X6D9E, 0X4B0B, 0XB7, 0XEC, 0X35, 0X28, 0XF8, 0X9E, 0X40, 0XAF, 4); //[VT_BOOL]

//
// Light Sensor Data Types
//

// {E4C77CE2-DCB7-46E9-8439-4FEC548833A6}
DEFINE_GUID(SENSOR_DATA_TYPE_LIGHT_GUID,                            0XE4C77CE2, 0XDCB7, 0X46E9, 0X84, 0X39, 0X4F, 0XEC, 0X54, 0X88, 0X33, 0XA6);
// Ambient light in LUX, Lumens per square meter, the ACPI convention for reporting ambient light values
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LIGHT_LEVEL_LUX,                0XE4C77CE2, 0XDCB7, 0X46E9, 0X84, 0X39, 0X4F, 0XEC, 0X54, 0X88, 0X33, 0XA6, 2); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LIGHT_TEMPERATURE_KELVIN,       0XE4C77CE2, 0XDCB7, 0X46E9, 0X84, 0X39, 0X4F, 0XEC, 0X54, 0X88, 0X33, 0XA6, 3); //[VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_LIGHT_CHROMACITY,               0XE4C77CE2, 0XDCB7, 0X46E9, 0X84, 0X39, 0X4F, 0XEC, 0X54, 0X88, 0X33, 0XA6, 4); //[VT_VECTOR|VT_UI1]

//
// Scanner Sensor Data Types
//

// {D7A59A3C-3421-44AB-8D3A-9DE8AB6C4CAE}
DEFINE_GUID(SENSOR_DATA_TYPE_SCANNER_GUID,                          0XD7A59A3C, 0X3421, 0X44AB, 0X8D, 0X3A, 0X9D, 0XE8, 0XAB, 0X6C, 0X4C, 0XAE);
// EM4102 RFID protocol uses 40 bit tags, stored in 64 bit value: VT_UI8
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_RFID_TAG_40_BIT,                0XD7A59A3C, 0X3421, 0X44AB, 0X8D, 0X3A, 0X9D, 0XE8, 0XAB, 0X6C, 0X4C, 0XAE, 2); //[VT_UI8]

//
// Electrical Sensor Data Types
//

// {BBB246D1-E242-4780-A2D3-CDED84F35842}
DEFINE_GUID(SENSOR_DATA_TYPE_ELECTRICAL_GUID,                       0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_VOLTAGE_VOLTS,                  0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 2); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CURRENT_AMPS,                   0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 3); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CAPACITANCE_FARAD,              0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 4); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_RESISTANCE_OHMS,                0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 5); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_INDUCTANCE_HENRY,               0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 6); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ELECTRICAL_POWER_WATTS,         0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 7); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ELECTRICAL_PERCENT_OF_RANGE,    0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 8); //[VT_R8]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_ELECTRICAL_FREQUENCY_HERTZ,     0XBBB246D1, 0XE242, 0X4780, 0XA2, 0XD3, 0XCD, 0XED, 0X84, 0XF3, 0X58, 0X42, 9); //[VT_R8]

//
// Custom Sensor Data Types (additions to sensors.h)
//

// {B14C764F-07CF-41E8-9D82-EBE3D0776A6F}
DEFINE_GUID(SENSOR_DATA_TYPE_CUSTOM_GUID,                           0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F);
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_USAGE,                   0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 5);    //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_BOOLEAN_ARRAY,           0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 6);    //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE1,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 7);    //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE2,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 8);    //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE3,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 9);    //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE4,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 10);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE5,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 11);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE6,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 12);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE7,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 13);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE8,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 14);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE9,                  0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 15);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE10,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 16);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE11,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 17);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE12,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 18);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE13,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 19);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE14,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 20);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE15,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 21);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE16,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 22);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE17,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 23);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE18,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 24);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE19,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 25);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE20,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 26);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE21,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 27);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE22,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 28);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE23,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 29);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE24,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 30);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE25,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 31);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE26,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 32);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE27,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 33);   //[VT_UI4||VT_R4]
DEFINE_PROPERTYKEY(SENSOR_DATA_TYPE_CUSTOM_VALUE28,                 0XB14C764F, 0X7CF, 0X41E8, 0X9D, 0X82, 0XEB, 0XE3, 0XD0, 0X77, 0X6A, 0X6F, 34);   //[VT_UI4||VT_R4]

//
// Test hooks
//

//{e1e962f4-6e65-45f7-9c36-d487b7b1bd34}
DEFINE_GUID(SENSOR_PROPERTY_TEST_GUID,                              0XE1E962F4, 0X6E65, 0X45F7, 0X9C, 0X36, 0XD4, 0X87, 0XB7, 0XB1, 0XBD, 0X34);
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_CLEAR_ASSISTANCE_DATA,           0XE1E962F4, 0X6E65, 0X45F7, 0X9C, 0X36, 0XD4, 0X87, 0XB7, 0XB1, 0XBD, 0X34, 2); //[VT_UI4]
DEFINE_PROPERTYKEY(SENSOR_PROPERTY_TURN_ON_OFF_NMEA,                0XE1E962F4, 0X6E65, 0X45F7, 0X9C, 0X36, 0XD4, 0X87, 0XB7, 0XB1, 0XBD, 0X34, 3); //[VT_UI4]

#define GNSS_CLEAR_ALL_ASSISTANCE_DATA 0x00000001

#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion

#endif
